<template>
  <UpLoadExcel :onSuccess="success"></UpLoadExcel>
</template> 

<script>
import { importEmployee } from "@/api/employees";
export default {
  methods: {
    async success({ header, results }) {
      // console.log(header); //标题数组
      // console.log(results); //把excel转化成了数组  key是标题 值是数据

      // 数组 中文的key 转换为英文的key
      // 定义对应关系
      const userRelations = {
        入职日期: "timeOfEntry",
        手机号: "mobile",
        姓名: "username",
        转正日期: "correctionTime",
        工号: "workNumber",
      };
      // 进行转换
      //   let arr = []; //转换后的数组
      //   results.forEach((item) => {
      //     let userInfo = {}; //转换数组中的每个对象 新对象
      //     Object.keys(item).forEach((key) => {
      //       userInfo[userRelations[key]] = item[key];
      //     });
      //     arr.push(userInfo);
      //   });
      //   console.log(arr);//转化后的数组
      let newArr = results.map((item) => {
        let userInfo = {}; //转换数组中的每个对象 新对象
        Object.keys(item).forEach((key) => {
            if (userRelations[key] === 'timeOfEntry' || userRelations[key] === 'correctionTime') {
                userInfo[userRelations[key]] = new Date(this.formatDate(item[key], '/')) // 只有这样, 才能入库
            }else{
                userInfo[userRelations[key]] = item[key];

            }
        });
        return userInfo;
      });
    //   console.log(newArr); //转化后的数组
      await importEmployee(newArr) // 调用导入接口
      this.$message.success('导入成功')
        this.$router.back()
    },
    formatDate(numb, format) {
      const time = new Date((numb - 1) * 24 * 3600000 + 1)
      time.setYear(time.getFullYear() - 70)
      const year = time.getFullYear() + ''
      const month = time.getMonth() + 1 + ''
      const date = time.getDate() - 1 + ''
      if (format && format.length === 1) {
        return year + format + month + format + date
      }
      return year + (month < 10 ? '0' + month : month) + (date < 10 ? '0' + date : date)
    }
  },
};
</script>

<style>
</style>